package com.gagakuai.engine.runtime;

/*
 * @program: common-starters
 * @description: 流程实列构建器
 * @author: houhong
 * @create: 2023-01-02 14:13
 */
public interface ProcessInstanceBuilder {

    ProcessInstanceBuilder processDefinitionId(String processDefinitionId);

    /*
    *  
    */
    ProcessInstanceBuilder processDefinitionKey(String processDefinitionKey);

    /*
     * 设置流程实列的名
     */
    ProcessInstanceBuilder processInstanceName(String processInstanceName);

    /*
     * 设置流程实列的业务key
     */
    ProcessInstanceBuilder businessKey(String businessKey);

    /*
     * 设置流程实列的租户Id
     */
    ProcessInstanceBuilder tenantId(String tenantId);

    /*
     * 向流程实列中添加变量
     */
    ProcessInstanceBuilder addVariable(String variableName, Object value);

    /*
     * 启动流程实列
     */
    ProcessInstance start();

}